﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Xml;
using Common.Utilities.Dispatcher;

namespace Workflows.Components.ETL
{
    /// <summary>
    /// 
    /// </summary>
    [Serializable]
    public class WebCrawlerInstruction:InstructionBase
    {
        #region props
        private string _Url;
        /// <summary></summary>
        public string Url
        {
            get { return _Url; }
            set { _Url = value; }
        }

        private string _UserName;
        /// <summary></summary>
        public string UserName
        {
            get { return _UserName; }
            set { _UserName = value; }
        }

        private string _Password;
        /// <summary></summary>
        public string Password
        {
            get { return _Password; }
            set { _Password = value; }
        }

        private Dictionary<string, WebParameter> _WebParameters;
        /// <summary></summary>
        public Dictionary<string, WebParameter> WebParameters
        {
            get { return _WebParameters; }
            set { _WebParameters = value; }
        }
        #endregion
        /// <summary></summary>
        public WebCrawlerInstruction()
            : base(Guid.Empty, Guid.Empty)
        {
            this._Url = string.Empty;
            this._UserName = string.Empty;
            this._Password = string.Empty;
            this._WebParameters = null;
        }
        /// <summary></summary>
        public WebCrawlerInstruction(Guid componentID, Guid jobTicketID, string url, string userName, string password, Dictionary<string, WebParameter> webparams)
            : base(componentID, jobTicketID)
        {
            this._Url = url;
            this._UserName = userName;
            this._Password = password;
            this._WebParameters = webparams;
        }

        public override XmlNode Serialize(ref XmlDocument xDoc, ref XmlNode parentNode)
        {
            throw new NotImplementedException();
        }

        public override InstructionBase Instantiate(XmlNode xNode)
        {
            throw new NotImplementedException();
        }
    }
}
